linux下安装nginx,以及防火墙管理

您所在的位置:网站首页 linux nginx关闭 linux下安装nginx,以及防火墙管理

linux下安装nginx,以及防火墙管理

2023-08-16 16:28| 来源: 网络整理| 查看: 265

linux下安装nginx,以及防火墙管理 1.安装nginx2.防火墙的操作命令

1.安装nginx

首先安装依赖:

yum install gcc 安装 Nginx 的编译环境 gcc yum install pcre-devel nginx 的 http 模块使用 pcre 解析正则表达式,所以安装 perl 兼容的正则表达式库 yum install zlib zlib-devel nginx 使用 zlib 对 http 包的内容进行 gzip yum install openssl openssl-devel nginx 不仅支持 http 协议,还支持 https(即在 ssl 协议上传输 http),如果使用了 https ,需要安装 OpenSSL 库 一次性安装上面四个依赖 yum -y install gcc zlib zlib-devel pcre-devel openssl openssl-devel

下载nginx 一般情况下放在local下,在local新建一个nginx文件夹:

切换到local目录下,执行命令: mkdir nginx 依次执行 cd nginx wget http://nginx.org/download/nginx-1.13.7.tar.gz tar -zxvf nginx-1.13.7.tar.gz cd nginx-1.13.7 ./configure 使用默认配置 如果要配置多个nginx在同一台服务器上 ,则执行以下命令 ./configure --prefix=/usr/local/nginx ./configure --prefix=/usr/local/nginx1 这样的话 就会生成两个配置文件 一个nginx 一个在nginx1, 需要注意的是 下面的编译安装命令 要在每个配置命令执行完后 紧接着执行,既是 configure 完成后 立即 make && make install make && make install 编译、安装

以下操作根据需要可以执行也可以不执行 vim /etc/profile 配置环境变量 在合适的位置添加下面两端 或者 export PATH=$PATH:/usr/local/nginx/sbin 重新编译,使配置生效 : source /etc/profile

启动nginx 已经配置了环境变量,所以可以直接在任何位置启动

nginx nginx -s stop nginx -s quit nginx -s reload

nginx -s quit:此方式停止步骤是待nginx进程处理任务完毕进行停止。 nginx -s stop:此方式相当于先查出nginx进程id再使用kill命令强制杀掉进程。

如果没有配置环境变量就要找到绝对路径来启动

/usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx -s reload 重启 pkill -9 nginx 强制停止nginx 服务 开机自启动nginx vi /etc/rc.local 增加一行 /usr/local/nginx/sbin/nginx 设置执行权限 chmod 755 rc.local 如果上面的命令不行 就执行全路径名 chmod 755 /etc/rc.local

查看是否启动

ps -ef |grep nginx

root 742 719 0 08:57 ? 00:00:00 runsv nginx root 811 742 0 08:57 ? 00:00:00 svlogd -tt /var/log/gitlab/nginx root 819 742 0 08:57 ? 00:00:00 nginx: master process /opt/gitlab/embedded/sbin/nginx -p /var/opt/gitlab/nginx gitlab-+ 829 819 0 08:57 ? 00:00:00 nginx: worker process gitlab-+ 830 819 0 08:57 ? 00:00:00 nginx: worker process gitlab-+ 832 819 0 08:57 ? 00:00:00 nginx: worker process gitlab-+ 833 819 0 08:57 ? 00:00:00 nginx: worker process gitlab-+ 834 819 0 08:57 ? 00:00:00 nginx: cache manager process root 9958 1 0 09:19 ? 00:00:00 nginx: master process /usr/local/nginx/sbin/nginx nobody 9959 9958 0 09:19 ? 00:00:00 nginx: worker process root 16054 9606 0 09:48 pts/0 00:00:00 grep --color=auto nginx

看到你的nginx占用的进程号说明已经启动,可以通过 http://ip:80 访问, nginx的conf的修改: 1.修改端口号:默认是80, 在这里插入图片描述 2.配置前后端跨域请求ip:端口号

在这里插入图片描述

配置完后重启nginx,生效 如果输入ip端口号访问不了,首先查看端口号是否被占用

netstat -apn 查看所有端口号

端口号没有被占用再查看防火墙是否开启 linux 一般有两个防火墙 :

firewall-cmd --state 查看默认防火墙状态(关闭后显示no running,开启后显示running) 这个防火墙一般默认就是关闭的 关闭防火墙 systemctl stop firewalld.service 禁止防火墙开机启动 systemctl disable firewalld.service service iptables status 查看防火墙是否启动

在这里插入图片描述 启动的情况这个小圆点是绿色的,停止状态是白色 如果启动我们去配置防火墙,暴露出我们的端口号

vim /etc/sysconfig/iptables 在上面添加端口号对外访问:例如8080 -A INPUT -m state–state NEW -m tcp -p tcp --dport 8080 -j ACCEPT 依次执行命令重启防火墙使配置生效, source /etc/sysconfig/iptables 配置文件及时生效 service iptables save service iptables restart

2.防火墙的操作命令 永久性生效

开启:chkconfig iptables on 关闭:chkconfig iptables off

即时生效,重启后失效

开启:service iptables start 关闭:service iptables stop

3.查看防火墙状态

service iptables status

service iptables save 指令失败

首先不管防火墙有没有关 都使用systemctl stop firewalld(systemctl stop firewalld.service) 关闭防火墙 然后使用 yum install iptables-services 安装或更新服务 再使用systemctl enable iptables 启动iptables 最后 systemctl start iptables 打开iptables 大功告成 试试service iptables save

5.重启防火墙(iptables)命令失败

#service iptable restart Redirecting to /bin/systemctl restart iptable.service Failed to issue method call: Unit iptable.service failed to load: No such file or directory. 据说从某个版本的Linux系统(CenterOS/RedHat)后就将service命令改了,如下 systemctl start iptables.service #iptables -L 重启防火墙成功~



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3